<?php
namespace App\Intelihelp\Controller;

use Foxforms\Widget\Form;

use Foxforms\Widget\Field\Input;

class prioridadeController extends \Foxframe\Controller
{
	public function index($params = array())
	{
		$this->redirect(BASE_PATH.'intelihelp/prioridade/viewListar');
	}

	public function viewListar($params = array())
	{
		$lista = $this->em->getRepository('Entities\Intelihelp\Prioridade')->listar();
		$this->view->assign('lista', $lista);
	}

	public function viewSalvar($params = array())
	{
		if (isset($params['id']) && !empty($params['id']))
			$prioridade	= $this->em->find('\Entities\Intelihelp\Prioridade', $params['id']);
		else
			$prioridade	= new \Entities\Intelihelp\Prioridade();

		$form	= new Form();
		$form->addValues($prioridade, 'prioridade');
		$form->addElement(Input::create('application')->setType('hidden')->setValue('intelihelp'));
		$form->addElement(Input::create('controller')->setType('hidden')->setValue('prioridade'));
		$form->addElement(Input::create('method')->setType('hidden')->setValue('saveSalvar'));
		$form->addElement(Input::create('prioridade[idprioridade]')->setType('hidden'));
		$form->addElement(
				Input::create('prioridade[dsprioridade]')
				->setLabel('Prioridade')
				->validate()
		);
		$form->addElement(
				Input::create('prioridade[qtdhora]')
				->setLabel('Hora(s)')
				->validate()
				->addClass('number')
		);
		$form->addElement(Input::create('salvar')->setType('submit')->setValue('Salvar')->addClass('btn btn-primary'));
		$form->addElement(Input::create('cancelar')->setType('reset')->setValue('Cancelar')->addClass('btn'));
		$this->view->assign('form', $form);
		$this->returnAjax();
	}

	public function saveSalvar($params = array())
	{
		try
		{
			if (isset($params['prioridade']['idprioridade']) && !empty($params['prioridade']['idprioridade']))
				$prioridade	= $this->em->find('\Entities\Intelihelp\Prioridade', $params['prioridade']['idprioridade']);
			else
				$prioridade	= new \Entities\Intelihelp\Prioridade();

			$prioridade->setTipo($params['prioridade']['dsprioridade']);
			$prioridade->setPrazo($params['prioridade']['qtdhora']);
			$this->em->persist($prioridade);
			$this->em->flush();

			$this->setFlash('Success', 'Sucesso', 'Prioridade salva com sucesso');
		}
		catch (Exception $e)
		{
			$this->setFlash('Error', 'Erro ao salvar prioridade', $e->getMessage());
		}
		$this->redirect(BASE_PATH.'intelihelp/prioridade');
	}
}